package popcorn.ticket.service;

import java.util.List;

import popcorn.ticket.entity.Logs;
import popcorn.ticket.entity.MovieComment;
import popcorn.ticket.tool.AjaxResponse;
import popcorn.ticket.tool.PageData;

/**
 * 影评业务接口
 * @author bug总和我作队
 *
 */
public interface MovieCommentService {
	/**
	 * 分页查所有影评
	 * @param keywords 关键字
	 * @param page	页码
	 * @param limit	每页显示数
	 * @return
	 */
	public PageData<MovieComment> getCommentByAll(String keywords, int page, int limit);
	/**
	 * 批量修改状态
	 * @param idList 影评编号集合
	 * @param logs	日志对象
	 * @return
	 */
	public AjaxResponse updateStatus(List idList,Logs logs);
	/**
	 * 查询单个用户的全部影评
	 * @param userid 用户编号
	 * @return
	 */
	public List<MovieComment> selCommentByUserid(int userid);
	/**
	 * 用户删除影评
	 * @param mc 影评对象
	 * @param logs	日志对象
	 * @return
	 */
	public boolean updateStatusByUser(MovieComment mc,Logs logs);
	/**
	 * 用户发布影评
	 * @param m 影评对象
	 * @return
	 */
	public AjaxResponse addCommentByUser(MovieComment m);
	/**
	 * 根据电影编号查询影评
	 * @param movieid 电影编号
	 * @param page	页码
	 * @param limit	每页显示数
	 * @return
	 */
	public PageData<MovieComment> getCommnetByMI(int movieid, int page, int limit);
	/**
	 * 高分榜
	 * @param page 页码
	 * @param limit	每页显示数
	 * @return
	 */
	public PageData<MovieComment> getListByScore(int page,int limit);
	/**
	 * 查询在某个时间段内的影评
	 * @param startTime 开始时间
	 * @param endTime	结束时间
	 * @param moviename	电影名
	 * @param userid	用户编号
	 * @param username	用户名
	 * @param page	页码
	 * @param limit	每页显示数
	 * @param keywords	关键字
	 * @return
	 */
	PageData<MovieComment> getCommnetsByTimeSlot(String startTime, String endTime, String moviename, int userid,
			String username,int page,int limit,String keywords);


}
